package org.filetransfer.file_transfer_java_backend.model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Schema(description = "文件分类信息")
public class FileCategoryModel {
    //    public FileCategoryModel(String fileName, long count, long fileSize) {
//        var ext = fileName.substring(fileName.lastIndexOf('.') + 1);
//        switch (ext) {
//            case "jpg", "jpeg", "png", "gif", "bmp", "webp" -> fileType = FileType.IMAGE;
//            case "mp4", "avi", "mov", "wmv", "flv", "mkv", "rmvb", "rm", "3gp", "mpg", "mpeg", "vob", "webm" -> fileType = FileType.VIDEO;
//            case "mp3", "wav", "flac", "ape", "wma", "aac", "ogg", "m4a" -> fileType = FileType.AUDIO;
//            case "doc", "docx", "xls", "xlsx", "ppt", "pptx", "pdf", "txt", "md", "html", "htm", "xml", "json", "csv", "log" -> fileType = FileType.DOCUMENT;
//            default -> fileType = FileType.OTHER;
//        }
//        this.fileCount = count;
//        this.totalSize = fileSize;
//    }
    public enum FileType {
        IMAGE, VIDEO, AUDIO, DOCUMENT, OTHER
    }
    @Schema(description = "文件类型")
    private FileType fileType;
    @Schema(description = "文件数量")
    private long fileCount = 0L;
    @Schema(description = "文件总大小")
    private long totalSize = 0L;
}
